package cn.uin.api;

import cn.uin.api.dto.request.auth.RegisterRequestDTO;
import cn.uin.api.dto.request.auth.SendEmailRequestDTO;
import cn.uin.api.dto.request.auth.SendSMSRequestDTO;
import cn.uin.api.dto.request.auth.EditUserDetailDTO;
import cn.uin.api.dto.response.auth.RegisterResponseDTO;
import cn.uin.api.response.Response;

/**
 * @ClassName IAuthService
 * @Description:认证服务接口
 * @Author: Administrator
 * @CreateDate: 2025/10/20 9:24
 * @Version: 1.0
 */
public interface IAuthService {

	/**
	 * 注册
	 * @param registerRequestDTO
	 * @return
	 */
	Response<RegisterResponseDTO> register(RegisterRequestDTO registerRequestDTO);

	/**
	 * 发送邮件验证码
	 * @param sendEmailRequestDTO
	 * @return
	 */
	Response<Boolean> sendEmailCode(SendEmailRequestDTO sendEmailRequestDTO);

	/**
	 * 发送手机验证码
	 * @param sendSMSRequestDTO
	 * @return
	 */
	Response<Boolean> sendPhoneCode(SendSMSRequestDTO sendSMSRequestDTO);

	/**
	 * 编辑用户详细信息
	 * @param editUserDetailDTO
	 * @return
	 */
	Response<Boolean> editUserDetail(EditUserDetailDTO editUserDetailDTO);

	Response<RegisterResponseDTO> test();

}
